home *** CD-ROM | disk | FTP | other *** search
/ PC for Alla 2005 May / PC för Alla 0505.iso / fullversioner / realsoft3d / data1.cab / Scripting / scripts / js / oops / r3root.js < prev    next >
Encoding:
JavaScript  |  2005-04-04  |  15.3 KB  |  551 lines

  1.  
  2. // JavaScript wrapper for r3root.h
  3. // Auto generated file, do not modify by hand
  4. // Copyright ⌐ 2004, Realsoft Graphics Oy
  5.  
  6. var R3_ROOT_H = 1;
  7. include("oops/r3oops.js")
  8. include("oops/r3typids.js")
  9.  
  10.  
  11. var R3CLID_ROOT = 0;
  12.  
  13.  
  14.  
  15.  
  16. // Description: Creates a new instance.
  17. // Returns: Object, address of the created object
  18. // p3: Tag[], default attributes for the instance to be created
  19.  
  20. R3RM_CREATE = 0;
  21.  
  22. function mR3RM_CREATE(p3) {
  23.   return R3ToJS(  Do(this.r3obj, 0, p3, R3TID_TAG, R3TNF_ARRAY));
  24. }
  25.  
  26. // Description: Deletes an object (destructor). See R3ObjectDelete() shield.
  27.  
  28. R3RM_DELETE = 1;
  29.  
  30. function mR3RM_DELETE() {
  31.   DoA(this.r3obj, 1, 0, R3TID_INTEGER, 0);
  32. }
  33.  
  34. // Description: Set one or more class attributes. See R3SetClassAttrs()
  35. // p3: Tag[], tag list specifying attributes and values to be set.
  36.  
  37. R3RM_SETCLATTR = 2;
  38.  
  39. function mR3RM_SETCLATTR(p3) {
  40.   Do(this.r3obj, 2, p3, R3TID_TAG, R3TNF_ARRAY);
  41. }
  42.  
  43. // Description: Fetch class attributes
  44. // p3: Tag[], tags list specifying attributes to be fecthed
  45.  
  46. R3RM_GETCLATTR = 3;
  47.  
  48. function mR3RM_GETCLATTR(p3) {
  49.   Do(this.r3obj, 3, p3, R3TID_TAG, R3TNF_ARRAY);
  50. }
  51.  
  52. // Description: Set object attributes
  53. // p3: Tag[], tag list specifying attributes and values to be set
  54.  
  55. R3RM_SET = 4;
  56.  
  57. function mR3RM_SET(p3) {
  58.   Do(this.r3obj, 4, p3, R3TID_TAG, R3TNF_ARRAY);
  59. }
  60.  
  61. // Description: Fetch one or more object attributes
  62. // Returns: Tag[], NULL if all tags were recognized, otherwise address of the unrecognized tag.
  63. // p3: Tag[], tag list specifying attributes/storages.
  64.  
  65. R3RM_GET = 5;
  66.  
  67. function mR3RM_GET(p3) {
  68.   return   Do(this.r3obj, 5, p3, R3TID_TAG, R3TNF_ARRAY);
  69. }
  70.  
  71. // Description: Tells object to read its attributes from a file. If the class of the
  72. //      file is R3CLID_IFF, automatic crossplatform conversion is applied.
  73. // Returns: Boolean, FALSE if failed, R3RA_Error, can be used for fetching the error code
  74. // p3: Tag[], tag list specifying the file object and address for the error code:
  75.  
  76. R3RM_READ = 6;
  77.  
  78. function mR3RM_READ(p3) {
  79.   return   Do(this.r3obj, 6, p3, R3TID_TAG, R3TNF_ARRAY);
  80. }
  81.  
  82. // Description: Tells an object to write its attributes to a file
  83. // Returns: Boolean, NULL if write failed
  84. // p3: Tag[], tag list (R3RA_FileObject, R3RA_Error).
  85.  
  86. R3RM_WRITE = 7;
  87.  
  88. function mR3RM_WRITE(p3) {
  89.   return   Do(this.r3obj, 7, p3, R3TID_TAG, R3TNF_ARRAY);
  90. }
  91.  
  92. // Description: This method is defined by the root class althought its up to the sub
  93. //      classes to implement it. For more information, see model-view concept.
  94. // Virtual method
  95. // p1: Object, new value, the type of the value depends on the attribute in question
  96. // p3: Integer, model's attribute that has changed    
  97.  
  98. R3RM_UPDATE = 8;
  99.  
  100. function mR3RM_UPDATE(p1, p3) {
  101.   DoA2(this.r3obj, 8, p1, R3TID_OBJECT, 0, p3, R3TID_INTEGER, 0);
  102. }
  103.  
  104. // Description: Increments objects reference count. By default, the reference count is zero.
  105.  
  106. R3RM_REF = 9;
  107.  
  108. function mR3RM_REF() {
  109.   DoA(this.r3obj, 9, 0, R3TID_INTEGER, 0);
  110. }
  111.  
  112. // Description: Decrements objects reference count. When reference count drops to zero, the object is deleted.
  113.  
  114. R3RM_UNREF = 10;
  115.  
  116. function mR3RM_UNREF() {
  117.   DoA(this.r3obj, 10, 0, R3TID_INTEGER, 0);
  118. }
  119.  
  120. // Description: Tells an object to link itself at the head of a list.
  121. // p3: r3List, list
  122.  
  123. R3RM_ADDHEAD = 11;
  124.  
  125. function mR3RM_ADDHEAD(p3) {
  126.   DoA(this.r3obj, 11, p3, R3TID_LIST, 0);
  127. }
  128.  
  129. // Description: Tells an object ot link itself to the end of a list
  130. // p3: r3List, list
  131.  
  132. R3RM_ADDTAIL = 12;
  133.  
  134. function mR3RM_ADDTAIL(p3) {
  135.   DoA(this.r3obj, 12, p3, R3TID_LIST, 0);
  136. }
  137.  
  138. // Description: Removes an object from a list
  139. // p3: r3List, list
  140.  
  141. R3RM_REMOVE = 13;
  142.  
  143. function mR3RM_REMOVE(p3) {
  144.   DoA(this.r3obj, 13, p3, R3TID_LIST, 0);
  145. }
  146.  
  147. // Description: This method is defined by the root class but implemented by the sub classes.
  148.  
  149. R3RM_TRANSFORM = 18;
  150.  
  151. function mR3RM_TRANSFORM() {
  152.   DoA(this.r3obj, 18, 0, R3TID_INTEGER, 0);
  153. }
  154.  
  155. // Description: Makes a copy of an object
  156. // Returns: Object, an address of the duplicate
  157.  
  158. R3RM_COPY = 19;
  159.  
  160. function mR3RM_COPY() {
  161.   return R3ToJS(  DoA(this.r3obj, 19, 0, R3TID_INTEGER, 0));
  162. }
  163.  
  164. // Description: Tells an object to read all its attributes from the given object. Note: only
  165. //      those attributes are assigned which are common to the both objects.
  166. // p3: Object, address of the object from which the attributes should be read
  167.  
  168. R3RM_ASSIGN = 20;
  169.  
  170. function mR3RM_ASSIGN(p3) {
  171.   DoA(this.r3obj, 20, p3, R3TID_OBJECT, 0);
  172. }
  173.  
  174. // Description: Reads on object from the given file. FIrst, root attributes (such as the class
  175. //      id) are read. The root class then creates an instance of that class and sends
  176. //      R3RM_READ method to the instance.
  177. // Returns: Object, address of the loaded object or NULL if failed
  178. // p3: Tag[], attributes for the object to be loaded.    
  179.  
  180. R3RCM_LOADOBJECT = 21;
  181.  
  182. function mR3RCM_LOADOBJECT(p3) {
  183.   return R3ToJS(  Do(this.r3obj, 21, p3, R3TID_TAG, R3TNF_ARRAY));
  184. }
  185.  
  186. // Description: Fetches a localized string corresponding the given string id.
  187. // p3: Integer, string identifier. See localization examples
  188.  
  189. R3RCM_GETSTR = 25;
  190.  
  191. function mR3RCM_GETSTR(p3) {
  192.   DoA(this.r3obj, 25, p3, R3TID_INTEGER, 0);
  193. }
  194.  
  195. // Description: Enumerates sub class of the given class (non-recursive)
  196. // p1: Object, object to be called as R3SendMsgA3((R3OBJ *)p1, (R3INT)p2, (R3CLASS *)super, (R3CLAS *)class, (void *)p3);
  197. // p2: Integer, method for the callback object
  198. // p3: Object, whatever user data for the callback object.
  199.  
  200. R3RCM_ENUMSUBCLASSES = 26;
  201.  
  202. function mR3RCM_ENUMSUBCLASSES(p1, p2, p3) {
  203.   DoA3(this.r3obj, 26, p1, R3TID_OBJECT, 0, p2, R3TID_INTEGER, 0, p3, R3TID_OBJECT, 0);
  204. }
  205.  
  206. // Description: Sent to each class at close down. The class should free all objects allocated,
  207. //      e.g. window cache.
  208.  
  209. R3RCM_FREECACHE = 27;
  210.  
  211. function mR3RCM_FREECACHE() {
  212.   DoA(this.r3obj, 27, 0, R3TID_INTEGER, 0);
  213. }
  214.  
  215. // Description: Set an indexed object attribute
  216.  
  217. R3RM_SETINDEXED = 28;
  218.  
  219. function mR3RM_SETINDEXED() {
  220.   DoA(this.r3obj, 28, 0, R3TID_INTEGER, 0);
  221. }
  222.  
  223. // Description: Get an indexed object attribute
  224.  
  225. R3RM_GETINDEXED = 29;
  226.  
  227. function mR3RM_GETINDEXED() {
  228.   DoA(this.r3obj, 29, 0, R3TID_INTEGER, 0);
  229. }
  230.  
  231. // Description: Compares the given class id agains the class ids of the object.
  232. // Returns: Integer, 0 if the given class id doesn't match any of the classes of the
  233. //      given object. Otherwise positive integer is returned indicating the 'level' at which the match was
  234. //      found. Return value of 1 means that the given class is the 'true class' of
  235. //      the object. The return value of 2 indicates that the given class id is the
  236. //      super class of the object etc.
  237. // p3: Integer, class id to be checked
  238.  
  239. R3RM_ISOFKIND = 30;
  240.  
  241. function mR3RM_ISOFKIND(p3) {
  242.   return   DoA(this.r3obj, 30, p3, R3TID_INTEGER, 0);
  243. }
  244.  
  245. // Description: Asks if the given method or attribute is defined by the object.
  246. // Returns: Boolean, true if object recognizes the tag
  247. // p3: Integer, tag identifier
  248.  
  249. R3RM_ISYOURTAG = 31;
  250.  
  251. function mR3RM_ISYOURTAG(p3) {
  252.   return   DoA(this.r3obj, 31, p3, R3TID_INTEGER, 0);
  253. }
  254.  
  255. // Description: Insert the object to a given list after the given 'prev' node
  256. // Returns: Boolean, true if 'prev' node was found
  257. // p1: Boolean, don't send R3MM_CHANGED
  258. // p2: Object, previous object in the list
  259. // p3: r3List, list
  260.  
  261. R3RM_INSERT = 32;
  262.  
  263. function mR3RM_INSERT(p1, p2, p3) {
  264.   return   DoA3(this.r3obj, 32, p1, R3TID_BOOLEAN, 0, p2, R3TID_OBJECT, 0, p3, R3TID_LIST, 0);
  265. }
  266.  
  267. // Description: Fetch tag descriptor (R3TAGNAME) data for the given tag id.
  268. // Returns: Boolean, true if tag was found.
  269. // p1: Integer, tag to be fetched
  270. // p2: r3List, tags fetched by calling R3RM_MAKETAGLIST. If null, maketaglist and freetaglits methods are called internally.
  271.  
  272. R3RM_FINDTAGDESCR = 33;
  273.  
  274. function mR3RM_FINDTAGDESCR(p1, p2) {
  275.   return   DoA3(this.r3obj, 33, p1, R3TID_INTEGER, 0, p2, R3TID_LIST, 0, 0, R3TID_INTEGER, 0);
  276. }
  277.  
  278. // Description: Find tag descriptor by name
  279. // Returns: Boolean, true if found
  280. // p1: String, name of the attribute to be found
  281.  
  282. R3RM_FINDTAGDESCRBYNAME = 34;
  283.  
  284. function mR3RM_FINDTAGDESCRBYNAME(p1) {
  285.   return   DoA2(this.r3obj, 34, p1, R3TID_STRING, 0, 0, R3TID_INTEGER, 0);
  286. }
  287.  
  288. // Description: Fetch public attribute by hierarhical name. These methods use FINDTAGDESCRBYNAME method.
  289. // Returns: Object, object whose attribute was referred
  290. // p1: String, hierarhcial name identifying the attribute
  291. // p3: Object, buffer for the value
  292.  
  293. R3RM_SETPUBATTR = 36;
  294.  
  295. function mR3RM_SETPUBATTR(p1, p3) {
  296.   return R3ToJS(  DoA2(this.r3obj, 36, p1, R3TID_STRING, 0, p3, R3TID_OBJECT, 0));
  297. }
  298.  
  299. // Description: Find tag description for indexed tag.
  300. // Returns: Boolean, true if found
  301. // p1: Integer, tag
  302. // p2: Integer, index,
  303.  
  304. R3RM_FINDINDEXEDTAGDESCR = 37;
  305.  
  306. function mR3RM_FINDINDEXEDTAGDESCR(p1, p2) {
  307.   return   DoA3(this.r3obj, 37, p1, R3TID_INTEGER, 0, p2, R3TID_INTEGER, 0, 0, R3TID_INTEGER, 0);
  308. }
  309.  
  310. // Description: Find name for indexed tag.
  311. // Returns: Boolean, true if found
  312. // p1: Integer, tag
  313. // p2: Integer, index,
  314. // p3: String, buffer for tag name    
  315.  
  316. R3RM_NAMEFORINDEXEDTAG = 38;
  317.  
  318. function mR3RM_NAMEFORINDEXEDTAG(p1, p2, p3) {
  319.   return   DoA3(this.r3obj, 38, p1, R3TID_INTEGER, 0, p2, R3TID_INTEGER, 0, p3, R3TID_STRING, 0);
  320. }
  321.  
  322.  
  323.  
  324.  
  325. R3RA_Hook = 511;
  326. function SetR3RA_Hook(value) {
  327.   R3Set(this.r3obj, R3RA_Hook, value, R3TID_OBJECT, 0); 
  328. }
  329.  
  330. function GetR3RA_Hook() {
  331.   return R3ToJS(R3Get(this.r3obj, R3RA_Hook, R3TID_OBJECT, 0)); 
  332. }
  333.  
  334. R3RA_Error = 512;
  335. function SetR3RA_Error(value) {
  336.   R3Set(this.r3obj, R3RA_Error, value, R3TID_INTEGER, 0); 
  337. }
  338.  
  339. function GetR3RA_Error() {
  340.   return R3Get(this.r3obj, R3RA_Error, R3TID_INTEGER, 0); 
  341. }
  342.  
  343. R3RA_Name = 513;
  344. function SetR3RA_Name(value) {
  345.   R3Set(this.r3obj, R3RA_Name, value, R3TID_STRING, 0); 
  346. }
  347.  
  348. function GetR3RA_Name() {
  349.   return R3Get(this.r3obj, R3RA_Name, R3TID_STRING, 0); 
  350. }
  351.  
  352. R3RA_ClassID = 514;
  353. function SetR3RA_ClassID(value) {
  354.   R3Set(this.r3obj, R3RA_ClassID, value, R3TID_INTEGER, 0); 
  355. }
  356.  
  357. function GetR3RA_ClassID() {
  358.   return R3Get(this.r3obj, R3RA_ClassID, R3TID_INTEGER, 0); 
  359. }
  360.  
  361. R3RA_InstanceSize = 516;
  362. function GetR3RA_InstanceSize() {
  363.   return R3Get(this.r3obj, R3RA_InstanceSize, R3TID_INTEGER, 0); 
  364. }
  365.  
  366. var R3RA_FileObject = 517; // Object
  367. R3RA_SysObject = 518;
  368. function SetR3RA_SysObject(value) {
  369.   R3Set(this.r3obj, R3RA_SysObject, value, R3TID_OBJECT, 0); 
  370. }
  371.  
  372. function GetR3RA_SysObject() {
  373.   return R3ToJS(R3Get(this.r3obj, R3RA_SysObject, R3TID_OBJECT, 0)); 
  374. }
  375.  
  376. var R3RA_TargetObject = 519; // Object
  377. var R3RA_BusyHook = 520; // Object
  378. R3RA_Next = 521;
  379. function SetR3RA_Next(value) {
  380.   R3Set(this.r3obj, R3RA_Next, value, R3TID_OBJECT, 0); 
  381. }
  382.  
  383. function GetR3RA_Next() {
  384.   return R3ToJS(R3Get(this.r3obj, R3RA_Next, R3TID_OBJECT, 0)); 
  385. }
  386.  
  387. R3RA_Previous = 522;
  388. function SetR3RA_Previous(value) {
  389.   R3Set(this.r3obj, R3RA_Previous, value, R3TID_OBJECT, 0); 
  390. }
  391.  
  392. function GetR3RA_Previous() {
  393.   return R3ToJS(R3Get(this.r3obj, R3RA_Previous, R3TID_OBJECT, 0)); 
  394. }
  395.  
  396. R3RA_HookData = 523;
  397. function SetR3RA_HookData(value) {
  398.   R3Set(this.r3obj, R3RA_HookData, value, R3TID_OBJECT, 0); 
  399. }
  400.  
  401. function GetR3RA_HookData() {
  402.   return R3ToJS(R3Get(this.r3obj, R3RA_HookData, R3TID_OBJECT, 0)); 
  403. }
  404.  
  405. R3RA_List = 524;
  406. function SetR3RA_List(value) {
  407.   R3Set(this.r3obj, R3RA_List, value, R3TID_LIST, R3TNF_ARRAY); 
  408. }
  409.  
  410. var R3RA_SenderObject = 525; // Object
  411. var R3RA_TargetMethod = 526; // Object
  412. var R3RA_LoadCreateTags = 527; // Tag[]
  413. R3RA_Self = 528;
  414. function GetR3RA_Self() {
  415.   return R3ToJS(R3Get(this.r3obj, R3RA_Self, R3TID_OBJECT, 0)); 
  416. }
  417.  
  418. R3RA_StaticName = 529;
  419. function SetR3RA_StaticName(value) {
  420.   R3Set(this.r3obj, R3RA_StaticName, value, R3TID_STRING, 0); 
  421. }
  422.  
  423. function GetR3RA_StaticName() {
  424.   return R3Get(this.r3obj, R3RA_StaticName, R3TID_STRING, 0); 
  425. }
  426.  
  427. R3RA_Version = 530;
  428. function GetR3RA_Version() {
  429.   return R3Get(this.r3obj, R3RA_Version, R3TID_INTEGER, 0); 
  430. }
  431.  
  432. R3RA_RefCount = 532;
  433. function SetR3RA_RefCount(value) {
  434.   R3Set(this.r3obj, R3RA_RefCount, value, R3TID_INTEGER, 0); 
  435. }
  436.  
  437. function GetR3RA_RefCount() {
  438.   return R3Get(this.r3obj, R3RA_RefCount, R3TID_INTEGER, 0); 
  439. }
  440.  
  441. R3RA_Dispatcher = 543;
  442. function SetR3RA_Dispatcher(value) {
  443.   R3Set(this.r3obj, R3RA_Dispatcher, value, R3TID_OBJECT, 0); 
  444. }
  445.  
  446. function GetR3RA_Dispatcher() {
  447.   return R3ToJS(R3Get(this.r3obj, R3RA_Dispatcher, R3TID_OBJECT, 0)); 
  448. }
  449.  
  450. var R3RA_TargetClass = 544; // Object
  451. R3RA_Icon = 545;
  452. function SetR3RA_Icon(value) {
  453.   R3Set(this.r3obj, R3RA_Icon, value, R3TID_OBJECT, 0); 
  454. }
  455.  
  456. function GetR3RA_Icon() {
  457.   return R3ToJS(R3Get(this.r3obj, R3RA_Icon, R3TID_OBJECT, 0)); 
  458. }
  459.  
  460. var R3LEN_INSTANCENAME = 256;
  461. var R3TNF_USERDEFINED = 1;
  462. var R3TNF_ANIMATEABLE = 2;
  463. var R3TNF_COPYSTRING = 16;
  464. var R3TNF_INDEXED = 32;
  465. var R3TNF_ARRAY = 64;
  466. var R3TNF_LIST = 128;
  467. var R3TNF_READONLY = 256;
  468. var R3TNF_PERPOINT = 512;
  469. var R3TNF_HPT = 1024;
  470. var R3TNF_BYVALUE = 2048;
  471. var R3TN_USERDEFINED = 1;
  472. var R3TN_ANIMATEABLE = 2;
  473. var R3TN_COPYSTRING = 16;
  474. var R3RSTR_UNDEFINED_ATTRIBUTE = 0;
  475. var R3RSTR_CANNOT_READ_OBJECT = 1;
  476. var R3RSTR_NEED_NEWER_VERSION = 2;
  477. var R3RSTR_UNDEFINED_METHOD = 3;
  478. var R3RSTR_NAME = 4;
  479.  
  480.  
  481. function r3Root () { 
  482.    this.base = r3God;
  483.    if(arguments.length) {
  484.       this.base(R3CLID_ROOT, arguments);
  485.    }
  486.    // Methods
  487.    this.CREATE=mR3RM_CREATE;
  488.    this.DELETE=mR3RM_DELETE;
  489.    this.SETCLATTR=mR3RM_SETCLATTR;
  490.    this.GETCLATTR=mR3RM_GETCLATTR;
  491.    this.SET=mR3RM_SET;
  492.    this.GET=mR3RM_GET;
  493.    this.READ=mR3RM_READ;
  494.    this.WRITE=mR3RM_WRITE;
  495.    this.UPDATE=mR3RM_UPDATE;
  496.    this.REF=mR3RM_REF;
  497.    this.UNREF=mR3RM_UNREF;
  498.    this.ADDHEAD=mR3RM_ADDHEAD;
  499.    this.ADDTAIL=mR3RM_ADDTAIL;
  500.    this.REMOVE=mR3RM_REMOVE;
  501.    this.TRANSFORM=mR3RM_TRANSFORM;
  502.    this.COPY=mR3RM_COPY;
  503.    this.ASSIGN=mR3RM_ASSIGN;
  504.    this.LOADOBJECT=mR3RCM_LOADOBJECT;
  505.    this.GETSTR=mR3RCM_GETSTR;
  506.    this.ENUMSUBCLASSES=mR3RCM_ENUMSUBCLASSES;
  507.    this.FREECACHE=mR3RCM_FREECACHE;
  508.    this.SETINDEXED=mR3RM_SETINDEXED;
  509.    this.GETINDEXED=mR3RM_GETINDEXED;
  510.    this.ISOFKIND=mR3RM_ISOFKIND;
  511.    this.ISYOURTAG=mR3RM_ISYOURTAG;
  512.    this.INSERT=mR3RM_INSERT;
  513.    this.FINDTAGDESCR=mR3RM_FINDTAGDESCR;
  514.    this.FINDTAGDESCRBYNAME=mR3RM_FINDTAGDESCRBYNAME;
  515.    this.SETPUBATTR=mR3RM_SETPUBATTR;
  516.    this.FINDINDEXEDTAGDESCR=mR3RM_FINDINDEXEDTAGDESCR;
  517.    this.NAMEFORINDEXEDTAG=mR3RM_NAMEFORINDEXEDTAG;
  518.  
  519.    // Attributes
  520.    this.GetHook=GetR3RA_Hook;
  521.    this.SetHook=SetR3RA_Hook;
  522.    this.GetError=GetR3RA_Error;
  523.    this.SetError=SetR3RA_Error;
  524.    this.GetName=GetR3RA_Name;
  525.    this.SetName=SetR3RA_Name;
  526.    this.GetClassID=GetR3RA_ClassID;
  527.    this.SetClassID=SetR3RA_ClassID;
  528.    this.GetInstanceSize=GetR3RA_InstanceSize;
  529.    this.GetSysObject=GetR3RA_SysObject;
  530.    this.SetSysObject=SetR3RA_SysObject;
  531.    this.GetNext=GetR3RA_Next;
  532.    this.SetNext=SetR3RA_Next;
  533.    this.GetPrevious=GetR3RA_Previous;
  534.    this.SetPrevious=SetR3RA_Previous;
  535.    this.GetHookData=GetR3RA_HookData;
  536.    this.SetHookData=SetR3RA_HookData;
  537.    this.SetList=SetR3RA_List;
  538.    this.GetSelf=GetR3RA_Self;
  539.    this.GetStaticName=GetR3RA_StaticName;
  540.    this.SetStaticName=SetR3RA_StaticName;
  541.    this.GetVersion=GetR3RA_Version;
  542.    this.GetRefCount=GetR3RA_RefCount;
  543.    this.SetRefCount=SetR3RA_RefCount;
  544.    this.GetDispatcher=GetR3RA_Dispatcher;
  545.    this.SetDispatcher=SetR3RA_Dispatcher;
  546.    this.GetIcon=GetR3RA_Icon;
  547.    this.SetIcon=SetR3RA_Icon;
  548. }
  549.  
  550. r3Root.prototype=new r3God;
  551. // r3root.h_H